package io.renren.modules.pet.service;

import io.renren.common.page.PageData;
import io.renren.common.service.CrudService;
import io.renren.modules.pet.vo.PetTeamVO;
import io.renren.modules.pet.dto.PetTeamDTO;
import io.renren.modules.pet.entity.PetTeamEntity;

import java.util.List;
import java.util.Map;

/**
 * 宠物团队信息
 *
 * @author zwp zwp
 * @since 1.0.0 2025-03-24
 */
public interface PetTeamService extends CrudService<PetTeamEntity, PetTeamVO> {
    
    /**
     * 保存
     * @param petTeamDTO
     */
    void save(PetTeamDTO petTeamDTO);
    
    /**
     * 修改
     * @param petTeamDTO
     */
    void update(PetTeamDTO petTeamDTO);

    /**
     * 查询列表
     * @param params
     * @return
     */
    List<PetTeamVO> getList(Map<String, Object> params);

    /**
     * 根据id查询
     * @param id
     * @return
     */
    PetTeamVO getInfoById(Long id);

    /**
     * 分页
     * @param params
     * @return
     */
    PageData<PetTeamVO> petTeamPage(Map<String, Object> params);

    /**
     * 获取用户收藏
     * @param params
     * @return
     */
    List<PetTeamVO> getTeamCollectByUser(Map<String, Object> params);

    /**
     * 获取用户团队信息
     * @param params
     * @return
     */
    PetTeamVO getTeamByUser(Map<String, Object> params);
}